勤務表を作ってみた(1)
どうもどうも。 この間水鉄砲で思いっきり遊んで日焼けしてしまったクニ吉です。
稼働時間算出・・・正直面倒・・・。 そこでExcelさんに時間を算出してもらいましょーということで、勤務表を作りました。 今回はその時に覚えた関数や条件付き書式等、Excelの使い方をご紹介♪ 使用しているのは「Excel2010」です。
まず、必要なカラムを用意しました。ここに必要な数式を入れていきます。
- WEEKDAY関数(TEXT関数)
- CEILING関数
- FLOOR関数
- SUM関数
案件で使用する場合、総作業時間を算出するのでFLOOR関数とCEILING関数は必要ないですが、 「勤務表」と言ったら欠かせない関数なので今回使用します。
日付と曜日を入力しよう
勤務表は使いまわしたいわけですが、日付をいちいち手入力するのは面倒なのでさくっと自動で表示させちゃいましょう。 まず、セルA2に日付を入れて、A3は「=A2+1」と入力して以下コピペ。
次は曜日です。ここで「WEEKDAY関数」を使用します。
◎WEEKDAY関数
WEEKDAY([日付],[種類]) 入力された日付から曜日を求める関数で、曜日に対応した整数を返します。 [種類]とは、どの曜日を基準とするかということです。[種類]で指定した値によって結果が違います。 ※今回は日曜日を基準として1-7の整数を返す[1]を使用しています。 ↓対象表は下記の通り。
◎ここがポイント!
WEEKDAY関数は、前述の通り指定した[種類]に応じた整数を返しますので、このままだと整数が表示されるだけです。 ↓こんな感じ これではあまり意味がないので、曜日が表示されるように形式を変えてあげましょう。 方法は二通りあります。
<方法1>セルの書式設定を変更する
セルの書式設定で曜日表示を指定してあげましょう。 ※書式記号についてはこちらを参照してください→「表示形式で使われる書式記号」 ●曜日の表示形式
- aaa→金
- aaaa→金曜日
- ddd→Fri
- dddd→Friday
今回は「aaa」の表示形式を使用します。
<方法2>TEXT関数を使用する
◎TEXT関数 TEXT([変換したい数値],[表示形式]) 数値を書式設定した文字列に変換します。 今回の場合WEELDAY関数を使用しているので、以下のような書き方をします。 =TEXT(WEEKDAY(A2,1),"aaa") A2の日付は2011/7/1なので、返り値は「金」になります。
日付と曜日の設定が終わったので、これでセルA2の日付を変えるだけで簡単に使いまわしが出来ます。 でも、入力時に休日がぱっとわかると入力しやすいな~とか思っちゃうクニ吉。 というわけで、条件付き書式を使って見やすくしちゃいましょう。
条件付き書式を使って表を見やすくしよう
ここでは日曜と表示された行の色を変えることをゴールとして進めます。 こんな風にしたい↓
◎条件付き書式
一定の条件を満たした値に対して書式設定を行う機能(フォント変更、セルの色変更等) Excel2010の場合、「ホーム」タブの中に「条件付き書式」があります。 「新しいルール」→「数式を使用して、書式設定するセルを決定」で書式設定する条件を入れます。
◎ここがポイント!
入力する形式は先ほどの表示形式変更の手順で変わります。 それはそれぞれ返り値が異なるからです。
<方法1>書式設定変更の場合
ここではセル上の書式設定を変えただけなので、B2の返り値は「指定した[種類]に応じた数値」になります。 今回WEEKDAY関数で指定している[種類]は[1]の「日曜を基準とした1-7の整数を返す」に設定しているので、 A2(2011/7/1)の日付を参照しているB2の値は金曜を示す「6」になります。(対照表をご参照ください) つまり、今回の場合は「1」が日曜を示すので、この条件付き書式で設定すべき数式は「$B2=1」となります。
「$」は固定を意味しています。 セル(B2~32)はそれぞれ値が違いますので、列Bだけを固定して行番号は変動するようにしましょう。 条件を入力したら「適用先」をA2~G32迄に変更して「OK」! これでA2に日付を入力したら日曜日の行に自動で色が付きます。
<方法2>TEXT関数の使用
ここではTEXT関数を使用しているため、返り値が「1」ではなく「日」という文字列になっています。 つまり、この条件付き書式で設定すべき数式は「$B2="日"」となります。 あとは<方法1>同様、適用範囲を変更してあげれば同じ結果を得られます。
おさらい
- 曜日は「WEEKDAY関数」でらくらく自動表示
- 「WEEKDAY関数」は整数を返すので、セルの書式設定か「TEXT関数」で表示形式を変更すること 。
- 条件付き書式は、指定したセルの値(返り値)がどうなっているのかを理解して設定すること。
日付関連はこれで完璧! だいぶ長くなりましたのでCEILING関数、FLOOR関数、SUM関数は第2弾で。。。
ではでは또 만나요!(* ̄▽ ̄)ノ~~